package com.cvpoc.spring.common.validator.langue;

import org.springframework.validation.Errors;
import org.springframework.validation.Validator;

import com.cvpoc.spring.common.form.langue.LangueCollaborateurForm;

public class LangueValidator implements Validator {
	
	/**
	 *
	 * 
	 * 
	 */
	
	public boolean supports(Class clazz) {
		return clazz.equals(LangueCollaborateurForm.class);
	}
	
	/**
	 * 
	 * Validation des données
	 * 
	 */
	public void validate(Object command, Errors errors) {
		LangueCollaborateurForm langue = (LangueCollaborateurForm)command;
		if(Integer.parseInt(langue.getLibelle()) == 0) {
			errors.rejectValue("libelle", "Une langue doit être choisi.");
		}
		
		if(langue.getNiveau().isEmpty()) {
			errors.rejectValue("niveau", "Le niveau ne peux être vide.");
		}
		
		if(langue.getPratique().isEmpty()) {
			errors.rejectValue("niveau", "Le degrès de pratique ne peux être vide.");
		}		
		
		if(langue.getCommentaire().length() > 255) {
			errors.rejectValue("niveau", "Le commentaire ne peux exceder 255 caractères.");
		}
	}
}
